/*
 * Source code written by Tácio S. Diogo.
 * Email: taciosd@gmail.com
 * Any copy or use without permission is prohibited.
 */
package app.modelo;

import app.agentes.Agente;
import java.io.Serializable;

/**
 *
 * @author Tácio S. Diogo
 */
public class Propaganda implements Serializable {
    private TIPO_PROPAGANDA tipo;
    private String mensagem;
    private Agente candidato;
    
    public enum TIPO_PROPAGANDA {
        OUTDOOR,    // Proibido
        PANFLETO,   // Permitido
        SHOWMICIO,  // Proibido
        COMICIO,    // Permitido
        BRINDES     // Proibido
    }
    
    public Propaganda(Agente candidato, TIPO_PROPAGANDA tipo, String mensagem) {
        this.candidato = candidato;
        this.tipo = tipo;
        this.mensagem = mensagem;
    }

    public String getMensagem() {
        return mensagem;
    }

    public TIPO_PROPAGANDA getTipo() {
        return tipo;
    }

    public Agente getCandidato() {
        return candidato;
    }
    
    public boolean ehPropagandaProibida() {
        
        switch (getTipo()) {
            case OUTDOOR:
            case SHOWMICIO:
            case BRINDES:
            {
                return true;
            }
            
            case PANFLETO:
            case COMICIO:
            {
                return false;
            }
            
            default:
                return true;
        }
    }
    
}
